The present invention relates to satellite communications techniques. More specifically, the invention relates to adaptively adjusting signal processing parameters such as ground station transmit power and uplink signal coding to meet a desired bit error rate at a destination ground station.
Modern communications networks carry staggering amounts of information and a portion of the information is often transmitted through a communications satellite. A single satellite may have, for example, the equivalent of 30 or more uplink transponders, each able to receive an uplink signal with a bandwidth of 250 MHz. The resultant uplink data path may have a capacity of 8 to 10 gigabits per second or more. Where a satellite is a link in the communications network, many individual ground stations may encode, modulate, and transmit uplink signals to the satellite. Each uplink signal may consist of hundreds of individual data channels, for example, carrying data for telephone conversations.
Because the uplink signals are susceptible to numerous sources of corrupting interference (for example, rain attenuation, scintillation loss, and multipath fading), the ground station applies error correcting codes to the uplink signal. Error correcting codes attempt to lower the Bit Error Rate (BER) of the information-carrying signal to acceptable levels. The BER is generally defined as the ratio of incorrectly received information bits to the total number of received information bits. A BER may be converted to an equivalent measure, the Symbol Error Rate (SER). The SER measures the ratio of incorrectly received symbols to the total number of received symbols (where a symbol is defined as a fixed number bits grouped together).
In many cases, a "concatenated" set of error correcting codes are applied to the data in order to lower the BER to acceptable levels. Concatenated coding refers to the sequence of coding (to be described below) in which a second coding operation is performed upon already encoded data. The "outer code" of the concatenated coding is the first code applied (the block code in the following description), while the "inner code" of the concatenated coding is the second code applied (the convolutional code in the following description). Alternatively, an additional block code may be used as the inner code (or a sequence of block codes (as the "inner" codes) may be used).
The first code the ground station applies is typically a block code. A codeword in a block code consists of k information bits, and r parity bits. The codeword is therefore n=k+r bits in length. A variety of block codes known as Reed-Solomon codes may be used to encode the uplink signals.
As noted above, block codes are generally organized on the basis of bits. Reed-Solomon block codes, however, are organized on the basis of groups of bits referred to as symbols. To form symbols, typically an incoming serial bit stream is stored as sequences of m individual bits (a symbol). The Reed-Solomon code has k information symbols (rather than bits), r parity symbols and a total codeword length of n=k+r symbols. For 8-bit symbols, a Reed-Solomon codeword is typically 255 symbols in length. Allowing the codeword to correct up to 16 symbols requires 32 parity symbols, thereby leaving 223 data symbols (for an effective code rate of 223/255 (approximately 7/8).
As part of the concatenated coding scheme, an additional level or levels of coding is applied by the ground station. For example, the ground station may further encode the block encoded uplink signals with a convolutional code to reduce the bit error rate (BER) associated with the uplink signal to even lower levels. A convolutional code is a type of error correcting code which transforms an input sequence of bits to an output sequence of bits through a finite-state machine, where additional bits are added to the data stream to allow for error-correcting capability. Typically the amount of error-correction capability is proportional to the amount of additional bits added and the memory present in the finite-state machine (encoder). The constraint length, K, of a convolutional code is proportional to the the encoder's memory and the rate of the convolutional code (e.g., m/n, with m&lt;n describes how many additional bits are added for every m information bits (i.e., n-m bits are added for each group of m information bits)). The decoding complexity of a convolutional code increase exponentially with the constraint length.
Additional information on block codes and convolutional codes may be found, for example, on pages 166-175 in The Communications Handbook, (Jerry D. Gibson ed., IEEE Press 1997). Pages 166-175 of The Communications Handbook are incorporated herein by reference in their entirety.
Satellites receive the encoded uplink signals and transmit downlink beams to the ground stations. Before a satellite transmits a downlink beam, however, the satellite may perform various signal processing operations on the received uplink signal including demodulation, decoding, switching, and multiplexing. A system that demodulates an uplink signal and remodulates a downlink beam for transmission is referred to as a "regenerative" system.
For example, a satellite that demodulates uplink signals, decodes the signals, and recodes the signals is typically referred to as a "regenerative decode/recode" system or more simply "decode/recode". On the other hand, a satellite which simply forwards the received uplink signals unaltered (other than a frequency translation) to a ground station is typically referred to as a "bent pipe" system. In "(regenerative) end-to-end" coding, the satellite typically demodulates the uplink signal and remodulates the data for transmission in a downlink beam without decoding any of the coding on the uplink signal.
The downlink beams produced by the satellite and transmitted to ground stations often include data (often in Time Division Multiplexed (TDM) form) for hundreds of users (for example telephony users). Typically, the coding on the uplink signal is designed to cover the worst-case channel conditions (both uplink and downlink) likely experienced by the user at any given time. The worst case channel condition may be associated with an (infrequent) rain storm which causes significant signal interference, for example. In the past, the combination of the inner code and the outer code has been implemented using relatively large constraint length convolutional codes and long block codes to achieve downlink beam performance tailored to the worst case channel condition.
Most ground stations, however, do not experience the worst case channel condition at any given time. Furthermore, the satellite typically does not contain sufficient power or processing capability to completely decode the inner code and outer codes and adaptively recode the data for each ground station or individual channel condition. Furthermore, in some systems the desired BER may require joint selection of not only coding, but also transmit power level. For example, in a regenerative end-to-end coded system, the inner and outer codes are not decoded. In such a system, a non-trivial, irreducible relationship exists between the energy per bit to noise density ratios (Eb/No) on the uplink and downlink needed to provide a given, fixed BER to the destination ground station. Because of power and complexity constraints, the satellite may not be able to adaptively apply additional coding and transmit power and coding changes must be made at the originating ground station, regardless of which link (uplink or downlink) is experiencing a degraded channel condition.
Thus, in the past, bandwidth has been wasted by over-encoding the uplink signal and downlink beam with error correcting information that is not be needed by the ground station most of the time. Wasted bandwidth results in inefficient communication, reduced throughout, lost revenue, and wasted time and power for complex coding and decoding processing. Furthermore, past satellite links have not addressed the intertwined relationship between transmit power level and coding in order to more efficiently use available bandwidth.
For example, U.S. Pat. No. 4,261,054 to Scharia-Nelson, entitled "Real-time adaptive power control in satellite communications systems", describes a system in which the transmit power produced by a satellite is adjusted by adjusting the power in a signal which is transmitted to the satellite. The Scharia patent describes a system in which a ground station monitors received signal quality using a soft decision demodulator. When the ground station detects poor signal quality, it purposefully inserts errors in a return data stream so that the origination ground station responds by increasing its transmit power level. The Schiara patent, however, does not describe controlling the linked relationship between power level and coding to achieve a desired BER at a destination ground station.
As another example, U.S. Pat. No. 4,752,967 to Bustamante et al., entitled "Power Control System for Satellite Communications" discloses a system for compensating for varying attenuation of an uplink signal. The Bustamante patent generally describes monitoring a beacon signal, transmitted from a location with a low probability of rain, to measure the difference between the long term and short term average power of the received beacon downlink signal and another transmitted downlink signal. An error signal, based on the difference, controls a transmitter gain adjustment to compensate for uplink fading. The Bustamante patent, however, also fails to describe controlling the linked relationship between power level and coding to achieve a desired BER at a destination ground station.
A need has long existed in the industry for a performance enhancing satellite communications system, which overcomes the disadvantages discussed above and previously experienced.